|
|
| Menüeintrag |
|---|
| Lösen → Löser Mystran |
| Arbeitsbereich |
| FEM |
| Standardtastenkürzel |
| S M |
| Eingeführt in Version |
| 0.20 |
| Siehe auch |
| FEM Tutorium |
Der Befehl LöserMystran command ermöglicht die Verwendung des Lösers MYSTRAN. Es kann verwendet werden für:
Die ausführbare Datei von Mystran kann man hier herunterladen. Den Ordner dort ablegen, wo man ihn ablegen möchte. mystran.exe (Die ausführbare Datei muss genau diesen Namen haben – den restlichen Teil des Standardnamens entfernen) in der Windows PATH-Variable oder die Datei einfach im FreeCAD\bin-Ordner ablegen. Falls notwendig, unter Einstellungen → FEM → Mystran angeben.
Der LöserMystran braucht zusätzlich zwei Pakete:
pyNastran kann via pip installiert werden:
python -m pip install pyNastranhfcMystran kann von der GitHub-Website als ZIP-Datei heruntergeladen werden (Code → Download ZIP). Entpacke es und lege es in den Ordner OrdnerFreeCAD\Mod.
Die Installation unter Linux ist ähnlich, allerdings gibt es ein paar Unterschiede.
Nachdem die ausführbare Datei von Mystran heruntergeladen wurde, benennt man sie wie oben beschrieben um und lässt sie ausführen. (Rechtsklick → Eigenschaften → Berechtigungen → Ausführen der Datei als Programm zulassen) und legt sie in das usr/bin-Verzeichnis von FreeCAD.
Für die Installation von pyNastran die folgenden Befehle in der Python-Konsole in FreeCAD eingeben:
import subprocess
subprocess.run(['pip', 'install', 'pyNastran'])
Lade schließlich hfcMystran herunter, entpacke es und lege es im Verzeichnis usr/Mod von FreeCAD ab.
Nach der Installation kann Werkzeuge → FEM-Beispiele öffnen im Arbeitsbereich FEM ausgewählt werden. Unter Löser → Mystran findet man einige funktionierende Mystran-Beispiele.
Unter Mod\Fem\femsolver\mystran, befinden sich diese Dateien:
add_con_displacement.py
add_con_fixed.py
add_con_force.py
add_femelement_geometry.py
add_femelement_material.py
add_mesh.py
add_solver_control.py
writer.py
solver.py
tasks.py
Die Funktion jeder Datei ist:
writer.py - Haupt-Steuerungs-Datei
model = BDF()
model = add_solver_control.add_solver_control(pynasf, model, self)
model = add_femelement_geometry.add_femelement_geometry(pynasf, model, self)
model = add_mesh.add_mesh(pynasf, model, self)
model = add_femelement_material.add_femelement_material(pynasf, model, self)
model = add_con_fixed.add_con_fixed(pynasf, model, self)
model = add_con_displacement.add_con_displacement(pynasf, model, self)
model = add_con_force.add_con_force(pynasf, model, self)
BDF() - Erzeuge einen leeren Andwendungsfall-Datei.
$pyNastran: version=msc
$pyNastran: punch=False
$pyNastran: encoding=utf-8
$pyNastran: nnodes=0
$pyNastran: nelements=0
ENDDATA
add_solver_control.py - Hinzufügen von EXECUTIVE CONTROL DECK und CASE CONTROL DECK.
$EXECUTIVE CONTROL DECK
SOL 101
CEND
$CASE CONTROL DECK
ECHO = NONE
TITLE = pyNastran for generating solverinput for for Mystran
SUBCASE 1
DISPLACEMENT(SORT1,REAL) = ALL
LOAD = 1
SPC = 1
SPCFORCES(SORT1,REAL) = ALL
STRESS(SORT1,REAL,VONMISES,BILIN) = ALL
SUBTITLE = Default
BEGIN BULK
$PARAMS
PARAM POST -1
add_femelement_geometry.py - GRID-Karten hinzufügen
add_mesh.py - Elementkarten hinzufügen
add_femelement_material.py - MAT1-Karte hinzufügen
add_con_fixed.py - Hinzufügen von SPCADD- und SPC1-Karten
add_con_displacement.py - Hinzufügen von SPCADD- und SPC1-Karten
add_con_force.py - Hinzufügen von FORCE-Karten